{{tag>dapper edgy administration réseau samba xubuntu brouillon}}

----

====== FUSE, système de fichier dans l'espace utilisateur ======

Avec **FUSE**, abréviation de //Filesystem in Userspace// il est possible d'implémenter toutes les fonctionnalités d'un système de fichier dans un espace utilisateur. Ces fonctionnalités incluent :
  * une API de librairie simple ;
  * une installation simple (pas besoin de patcher ou recompiler le noyau) ;
  * une implémentation sécurisée ;
  * utilisable dans l'espace utilisateur.

Aujourd'hui, pour monter un système de fichier, il faut être administrateur ou que celui-ci l'ait prévu dans « /etc/fstab » avec des informations en dur.

FUSE permet à un utilisateur de monter lui-même un système de fichier.


===== Programmes utilisant FUSE =====

Pour profiter de FUSE, il faut des programmes qui exploitent sa bibliothèque et ces programmes sont nombreux. Voici ceux qui semblent les plus utiles ([[http://fuse.sourceforge.net/wiki/index.php/FileSystems|liste complète]], en anglais) :

^ Nom ^ Fonction ^
| SSHFS | Ce système de fichier est basé sur le SSH File Transfer Protocol. Il permet de monter une connexion ssh sur son système de fichier. [[http://fuse.sourceforge.net/sshfs.html|Site…]] |
| SMB for Fuse | Avec SMB for Fuse il est possible d'explorer le voisinage réseau samba (ou Windows / CIFS) comme s'il était votre propre système de fichier. [[http://www.ricardis.tudelft.nl/~vincent/fusesmb/|Site…]] |
| CurlFtpFS | CurlFtpFS est un système de fichier FTP basé sur curl. [[http://curlftpfs.sourceforge.net/|Site…]] |
|EncFS | EncFS est un système de chiffrement de répertoire. Le module EncFS utilise la bibliothèque FUSE et un module du noyau Linux. Voir aussi [[:encfs]]. [[http://pobox.com/~vgough/encfs.html|Site…]] |
| GmailFS | GmailFS fournit un système de fichier où l'on peut accéder à son espace de stockage Gmail. [[http://richard.jones.name/google-hacks/gmail-filesystem/gmail-filesystem.html|Site…]] |
| CvsFS | Cvs fournit un système de fichier où l'on peut voir le contenu d'un dépôt CVS. Il est aussi possible d'effectuer des check in/out pour l'édition. [[http://sourceforge.net/projects/cvsfs|Site…]] |
| FuseISO | Permet de monter une image ISO9660 sur son système de fichier. [[http://ubiz.ru/dm/fuseiso-20060107.tar.bz2|Site…]] |
| TrackerFS | Permet de monter des requêtes [[http://freedesktop.org/wiki/Software/Tracker|Tracker]] comme un répertoire. Tracker indexe (très) rapidement les métadonnées de vos documents. [[http://code.google.com/p/trackerfs/|Site…]] (en cours de développement)|






===== Installation de FUSE =====

Rien de plus simple sur Ubuntu :
  * avoir samba d'installé ; ;-)
  * [[:tutoriel:comment_installer_un_paquet|installer les paquets]] « fuse-utils » et « libfuse2 » ;
  * ou utiliser [[http://packages.ubuntu.com/]].

{{:icons:iconnote.png  }}
> Avec Edgy Eft 6.10, et versions suivantes...la section suivante est inutile : l'installation des paquets effectue les modifications et ajouts nécessaires pour vous. Fuse est utilisable immédiatement.


==== Versions antérieures à 6.10 ====


Cependant, pour pouvoir l'utiliser, il faut rajouter fuse dans les modules chargés au démarrage :

  sudo sh -c "echo fuse >> /etc/modules"

Si vous voulez en profiter sans redémarrer :

  sudo modprobe fuse

Il faut ajouter les utilisateurs pouvant utiliser FUSE dans le groupe fuse, exemple :

  sudo adduser toto fuse

**Rappel : pour que l'ajout dans le groupe soit pris en compte, il faut se logguer de nouveau avec cet utilisateur.
Sans cela, vous devrez etre root pour utiliser fuse (erreur récurrente)**

Une fois le module fuse chargé (redémarrage ou modprobe fuse), le module se matérialise par /dev/fuse, cependant les droits par défaut ne sont pas corrects.
  sudo chgrp fuse /dev/fuse

Voilà, fuse est près à être utilisé.

**Note** : certains programmes (example : [[:ntfs-3g]] peuvent exiger une version du noyau plus récente que celle qui existe dans les deb. pour vous faire profiter des tout derniers pilotes. Il vous faudra donc le compiler. Regardez-ici : [[fuse_compilation]]


===== Guide d'utilisation de FUSE =====


==== Disponible dans les dépôt d'Ubuntu ====
Peu de programmes utilisant fuse sont packagés pour Ubuntu, cependant, il y a :
fuseiso, gmailfs, fusesmb et sshfs.

exemple pour fuseiso :
  ~$ sudo apt-get install fuseiso
  ~$ mkdir tmp
  ~$ fuseiso imageDeCD.iso tmp
  ~$ ls tmp/ # où toutes autres actions
  ~$ fusermount -u tmp # libère le point de montage


==== Non disponible dans les dépôt d'Ubuntu ====
La majorité des programmes devra être compilée par nos soins, mais rien de très compliqué.

Il faut installer les entêtes de fuse pour pouvoir compiler :
  sudo apt-get install libfuse-dev

Le reste des indications sur les sites des programmes utilisant FUSE (bien souvent : ./configure && make && make install)

==== Utilisation détaillée ====
=== SshFS ===
[[sshfs|Guide d'utilisation de SshFS]]
=== SMB For Fuse ===
[[:fusesmb|Guide d'utilisation de SMB For Fuse (fusesmb)]]
=== CurlFtpFs ===
[[:curlftpfs|Guide d'utilisation de CurlFtpFs]]
=== EncFs ===
[[:encfs]]

===== Liens et références =====

  * [[http://fuse.sf.net|Site officiel]]
  * [[http://forum.ubuntu-fr.org/viewtopic.php?id=38912|Commentaires et discussion ici]].

----

//Contributeurs : [[:utilisateurs:NicoA380]] [[http://forum.ubuntu-fr.org/profile.php?id=2745|+]].//